<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="utf-8">
    <title>Java接入</title>
    <link rel="stylesheet" href="css/amazeui.min.css" />
    <link rel="stylesheet" href="css/app.css">
    <link rel="stylesheet" href="css/bootstrap.css">
    <link rel="stylesheet" href="css/bootstrap-theme.css">
    <script src="js/jquery.min.js"></script>
    <script src="js/amazeui.min.js"></script>
    <script src="js/app.js"></script>
    <script src="js/bootstrap.js"></script>

    <style>
        h2{
            font-size: 24px
        }
        img{
            margin-top: 5px;
            border: 1px #ddd solid;
        }
    </style>
</head>

<body data-type="widgets">
<script src="js/theme.js"></script>
<div class="am-g tpl-g">
    <!-- 内容区域 -->
    <div class="row-content am-cf">
        <div class="row">
            <div class="am-u-sm-12 am-u-md-12 am-u-lg-12">
                <div class="widget am-cf">
                    <div class="widget-head am-cf">
                        <div class="widget-title  am-cf">多语言接入 - Java语言接入</div>
                    </div>
                    <div class="widget-body  am-fr">
                        <h1 style="font-size: 36px;margin-bottom: 40px">Java语言接入</h1>
                        <div class="am-u-sm-12">
                            <h2>1、接口描述</h2>
                            <span class="describeMainPage">
                                接口请求域名：http://www.aixtport.com/aichild/api-intervention/transfer<br/>
                                您可以通过传过来的参数，在Java后台发送post请求，返回回复数据，从而来达到数据调用效果，可防止appId秘钥泄露。
                            </span>
                        </div>
                        <div class="am-u-sm-12">
                            <h2>2、输入参数</h2>
                            <span class="describeMainPage">
                                以下接口列出了调用接口必要的接口参数<br/>
                                <table class="table table-bordered">
                                    <tr class="active">
                                        <td>参数名</td>
                                        <td>必选</td>
                                        <td>类型</td>
                                        <td>描述</td>
                                    </tr>
                                    <tr>
                                        <td>appId</td>
                                        <td>是</td>
                                        <td>String</td>
                                        <td>您的词库账号下AppId，用于标识账户Id、词库Id。</td>
                                    </tr>
                                    <tr>
                                        <td>keyWord</td>
                                        <td>是</td>
                                        <td>String</td>
                                        <td>用户问的问题，调用关键词。</td>
                                    </tr>
                                </table>
                            </span>
                        </div>
                        <div class="am-u-sm-12">
                            <h2>3、输出文档</h2>
                            <span class="describeMainPage">
                                以下接口仅列出了父级参数，如需看全，详情请看 <a href="#">《返回参数》</a><br/>
                                <table class="table table-bordered">
                                    <tr class="active">
                                        <td>参数名</td>
                                        <td>类型</td>
                                        <td>描述</td>
                                    </tr>
                                    <tr>
                                        <td>requestCode</td>
                                        <td>String</td>
                                        <td>返回的调用词条状态码</td>
                                    </tr>
                                    <tr>
                                        <td>describe</td>
                                        <td>String</td>
                                        <td>返回数据的描述</td>
                                    </tr>
                                    <tr>
                                        <td>requestMap</td>
                                        <td>Map</td>
                                        <td>返回的结果数据，如需查看详情，请看<a href="returnParameter.html">《返回参数》</a>。</td>
                                    </tr>
                                </table>
                            </span>
                        </div>
                        <div class="am-u-sm-12">
                            <h2>4、示例</h2>
                            <h4>输入示例</h4>
                            <div class="codeStyle">
                                http://www.aixtport.com/aichild/api-intervention/transfer?appId=zl2plygQdHGngSqNtTPI6CqyV73NA5&keyWord=小童
                            </div>
                            <h4>输出示例</h4>
                            <div class="codeStyle">
                                <xmp>
        {
            "requestCode":100,
            "describe":"返回结果成功。",
            "requestMap":{
                "result":{
                    "id":354,
                    "replyContents":"老板我来了~",
                    "rriggerType":1,
                    "triggerName":"默认",
                    "rriggerPath":"www.aixtport.com",
                    "type":1
                }
            }
        }
                                </xmp>
                            </div>
                        </div>

                        <div class="am-u-sm-12">
                            <h2>5、代码示例</h2>
                            <p>以下代码为Java代码接入。（该请求可使用多种请求方式，请求方式语言不唯一），演示操作。</p>
                            <div class="code">
                                <xmp>
        /**
        * 发送post接口请求方法。
        * @Author 张童瑶
        * @Time 2019年10月23日10:33:56
        *
        * @param appId 应用Id
        * @param keyWord 关键词
        * @return 返回json字符串
        */
        public static String sendXTPost(String appId,String keyWord){
            PrintWriter out = null;
            BufferedReader in = null;
            String result = "";
            try {
                //设置字符编码
                String urlKeyWord = URLEncoder.encode(keyWord, "utf-8");
                URL realUrl = new URL(
                "http://www.aixtport.com/aichild/api-intervention/transfer?appId="+appId+"&keyWord="+urlKeyWord);
                URLConnection conn = realUrl.openConnection(); // 打开和URL之间的连接

                // 设置通用的请求属性
                conn.setRequestProperty("accept", "*/*");
                conn.setRequestProperty("connection", "Keep-Alive");
                conn.setRequestProperty("user-agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");

                // 发送POST请求必须设置如下两行
                conn.setDoOutput(true);
                conn.setDoInput(true);

                // 获取URLConnection对象对应的输出流
                out = new PrintWriter(conn.getOutputStream());

                // flush输出流的缓冲
                out.flush();

                // 定义BufferedReader输入流来读取URL的响应
                in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
                String line;
                while ((line = in.readLine()) != null) {
                    result += line;
                }
            } catch (Exception e) {
                System.out.println("发送 POST 请求出现异常！"+e);
                e.printStackTrace();
            }finally{
                //使用finally块来关闭输出流、输入流
                try{
                    if(out!=null){
                        out.close();
                    }
                    if(in!=null){
                        in.close();
                    }
                }catch(IOException ex){
                    ex.printStackTrace();
                }
            }
            return result;
        }

        public static void main(String[] args) {
            String json = sendXTPost("zl2plygQdHGngSqNtTPI6CqyV73NA5","小童");
            System.out.println(json);
        }
                                </xmp>
                            </div>
                        </div>

                        <div class="am-u-sm-12">
                            <h2>6、执行结果</h2>
                            <p>该参数信息是json字符串信息，可开发者把字符串返回前台，前台调用即可。</p>
                            <img src="img/resultcode.jpg" alt="">
                        </div>

                        <div class="am-u-sm-12">
                            <h2>7、开发者测试环境</h2>
                            <span class="describeMainPage">
                                您可以通过浏览网页形式来测试您的接口和词库数据，<a href="http://www.aixtport.com/xt/test.html" target="_blank">Ai小童接口环境测试</a>。
                            </span>
                        </div>

                        <div class="am-u-sm-12">
                            <h2>对您有帮助吗？</h2>
                            <p>不管有无帮助，一起加入Ai小童大家庭吧！在这里您有很大的展现平台，您可以学到很多东西，赶快加入我们吧！<a target="_blank" href="//shang.qq.com/wpa/qunwpa?idkey=4972957ba2c09266ef2e637a5a559657fbdb0588ef927b2b62f200b77e64f17e" style="margin-top: -2px"><img border="0" src="//pub.idqqimg.com/wpa/images/group.png" alt="Ai小童云智能引擎官方" title="Ai小童云智能引擎官方"></a></p>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>
</body>
</html>